package com.my.zl.console.common.utils.generator;

import java.util.ArrayList;
import java.util.List;

public enum ZLGeneratorE {
    
    DATA_TYPE("data_type_table","data_type_method",""),
    //DATA_CONFIG("data_config","",""),
    DATA_TEMPLATE("data_template","",""),
    
    DATA_MAIN("data_main","",""),
    DATA_METHOD("data_method","map_method",""),
    DATA_TABLE("data_table","map_table",""),
    METHOD_OWN("method_own","",""),
    TABLE_OWN("table_own","",""),
    ENTITY_OWN("entity_own","",""),
    TABLE_REL("table_rels","",""),
    
    DATA_IMPORT_METHOD("import_method_class","import_method_class2",""),
    DATA_IMPORT_TABLE("import_table_class","import_table_class_all",""),
    
    DATA_CLASS("import_class","",""),
    DATA_RESOURCE("resource_class","resource_table_class",""),
    DATA_EXTENDS("extend_class","",""),
    DATA_FILE("import_file","",""),
    
    
    DATA_TAG("tags","tags_",""),
    DATA_OTHER("other","other_",""),
    
    BASE_PACK("base_pack","",""), 
    MODULE_PACK("module_pack","",""), 
    BASE_PATH("base_path","",""), 
    PACK_OWN("pack_own","pack_","pack2_"), 
    NAME_OWN("name_own","name_",""), 
    UNAME_OWN("uname_own","uname_",""),
    LNAME_OWN("lname_own","lname_",""), 
    LEVEL_OWN("level_own","level_",""), 
    
    TIME_STR("time_str","yyyy-MM-dd HH:mm:ss",""), 
    DATE_STR("date_str","yyyy-MM-dd",""), 
    AUTHOR_STR("author_str","",""), 
    EXPLAIN_STR("explain1_str","explain2_str",""), 
    TITLE_STR("project_title","module_title",""), 
    ;
    private String code;
    private String code2;
    private String code3;

    ZLGeneratorE(String code, String code2, String code3) {
        this.code = code;
        this.code2 = code2;
        this.code3 = code3;
    }
    public String getCode() {
        return code;
    }
    public String getCode2() {
        return code2;
    }
    public String getCode3() {
        return code3;
    }
    
    public static List<String> getParamCodeList() {
        List<String> lt = new ArrayList<>();
        lt.add(DATA_MAIN.getCode());
        lt.add(DATA_METHOD.getCode());
        lt.add(DATA_METHOD.getCode2());
        lt.add(DATA_TABLE.getCode());
        lt.add(DATA_TABLE.getCode2());
        lt.add(METHOD_OWN.getCode());
        lt.add(TABLE_OWN.getCode());
        lt.add(ENTITY_OWN.getCode());
        lt.add(TABLE_REL.getCode());
        
        
        lt.add(DATA_IMPORT_METHOD.getCode());
        lt.add(DATA_IMPORT_TABLE.getCode());
        lt.add(DATA_CLASS.getCode());
        lt.add(DATA_RESOURCE.getCode());
        lt.add(DATA_EXTENDS.getCode());
        lt.add(DATA_FILE.getCode());
        lt.add(DATA_TAG.getCode());
        lt.add(DATA_TAG.getCode2());
        lt.add(DATA_OTHER.getCode());
        lt.add(DATA_OTHER.getCode2());
        lt.add(BASE_PACK.getCode());
        lt.add(MODULE_PACK.getCode());
        lt.add(BASE_PATH.getCode());
        lt.add(PACK_OWN.getCode());
        lt.add(PACK_OWN.getCode2());
        lt.add(PACK_OWN.getCode3());
        lt.add(NAME_OWN.getCode());
        lt.add(NAME_OWN.getCode2());
        lt.add(UNAME_OWN.getCode());
        lt.add(UNAME_OWN.getCode2());
        lt.add(LNAME_OWN.getCode());
        lt.add(LNAME_OWN.getCode2());
        lt.add(LEVEL_OWN.getCode());
        lt.add(LEVEL_OWN.getCode2());
        lt.add(TIME_STR.getCode());
        lt.add(DATE_STR.getCode());
        lt.add(AUTHOR_STR.getCode());
        lt.add(EXPLAIN_STR.getCode());
        lt.add(EXPLAIN_STR.getCode2());
        
        return lt;
    }
}